#define _init__c

#include    "includeAll.h"

void InitRegister ()
{

	TMOD = 0x11;		        //16bit timer0&timer1
	TH0 = (65536-14744)/256;	//2ms timer0 interrupt
	TL0 = (65536-14744)%256;
	//TH1 = (65536-1)/256;		//20ms timer1 interrupt
	//TL1 = (65536-1)%256;
	TH2 = (65536-450)/256;      //0.125ms==2khz timer2 interrupt
	TL2 = (65536-450)%256;
	RCP2H = TH2  ;
	RCP2L = TL2  ;
	IPH=0x20;
	IP=0x20;
	ET0 = 1;			//timer0 interrupt enable
	TR0 = 1;			//timer0 running
	ET1 = 1;            //timer1 interrupt enable
	//TR1 = 1;            //timer1 running
	ET2 = 1;            //timer2 interrupt enable
	TR2 = 1;            //timer2 running
	EA = 1;
}



void InitIoport ()
{

	//P0OE&=0x00;
	P1MODL &=0x00;
	P1MODH &=0x00;
	P2MOD &=0x00;
	P3MODL &=0x00;
	P3MODH &=0x00;
	//P3MODH |=b0000_0010;
	//  P3MODH |= b0010_1000;
	P1MODL|=b1000_0000;
	P1MODH|=b1010_0000;
	P3MODH|=b0010_0010;
	P2MOD|=b0000_0010;
	F_clrPowerL;
//     F_clrPowerH;
	 //P1_7=1;
}

void iap_on()
{
	EA=0;
	   SWCMD=0x65;
	INTE1|=b10100000;
}

void iap_off()
{
	SWCMD=0x00;
	INTE1&=b00011111;
	EA=1;
}

void iap_read()
{
	iap_on();
	setCurTemp=*(uint8_t xdata *)(0x1f00);
	gear=*(uint8_t xdata *)(0x1f01);
	
	MorderClockOpenHour=*(uint8_t xdata *)(0x1f02);
	MorderClockOpenMin=*(uint8_t xdata *)(0x1f03);
	MorderClockCloseHour=*(uint8_t xdata *)(0x1f04);
	MorderClockCloseMin=*(uint8_t xdata *)(0x1f05);
	
		AorderClockOpenHour=*(uint8_t xdata *)(0x1f06);
	AorderClockOpenMin=*(uint8_t xdata *)(0x1f07);
	AorderClockCloseHour=*(uint8_t xdata *)(0x1f08);
	AorderClockCloseMin=*(uint8_t xdata *)(0x1f09);
	
	
	NorderClockOpenMin=*(uint8_t xdata *)(0x1f0a);
NorderClockCloseHour=*(uint8_t xdata *)(0x1f0b);
	NorderClockCloseMin=*(uint8_t xdata *)(0x1f0c);
	NorderClockOpenHour=*(uint8_t xdata *)(0x1f0d);
	function=*(uint8_t xdata *)(0x1f0e);
	iap_off();
}

void iap_write()
{
	iap_on();
	*(uint8_t xdata *)(0x1f00)=setCurTemp;
	*(uint8_t xdata *)(0x1f01)=gear;
	
*(uint8_t xdata *)(0x1f02)		=			MorderClockOpenHour	;
*(uint8_t xdata *)(0x1f03)	=				MorderClockOpenMin  	;
*(uint8_t xdata *)(0x1f04)		=			MorderClockCloseHour		;
*(uint8_t xdata *)(0x1f05)		=			MorderClockCloseMin		;
					
*(uint8_t xdata *)(0x1f06)		=			AorderClockOpenHour	  ;
*(uint8_t xdata *)(0x1f07)		=			AorderClockOpenMin		;
*(uint8_t xdata *)(0x1f08)		=			AorderClockCloseHour		;
*(uint8_t xdata *)(0x1f09)		=			AorderClockCloseMin		;
					
					
*(uint8_t xdata *)(0x1f0a)		=			NorderClockOpenMin		;
*(uint8_t xdata *)(0x1f0b)			=		NorderClockCloseHour			;
*(uint8_t xdata *)(0x1f0c)			=		NorderClockCloseMin		;
*(uint8_t xdata *)(0x1f0d)		=			NorderClockOpenHour	;
*(uint8_t xdata *)(0x1f0e)	=		function;
	iap_off();
}
